package com.sgl.gk.mapper;


import com.sgl.gk.controller.vo.ConfigValueAndConfigConnectVo;
import com.sgl.gk.controller.vo.GkSparePartsVo;
import com.sgl.gk.controller.vo.NgVo;
import com.sgl.gk.domain.GkStationConfigurationValues;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author:xec
 * @date:2022/11/1 9:42
 **/
public interface GkStationConfigurationValuesMapper {
    int deleteByStationConfigurationIds(List<Long> stationConfigurationIds);

    int saveList(List<GkStationConfigurationValues> gkStationConfigurationValues);


    List<GkStationConfigurationValues> selectByValue(@Param("barCode") String barCode);

    int editValueById(GkSparePartsVo gkSparePartsVo);

    List<GkStationConfigurationValues> selectByStationConfigurationConnectId(@Param("id") Long id);

    List<GkStationConfigurationValues> selectByStationConfigurationConnectIds(List<Long> stationConfigurationConnectIds);


    List<NgVo> selectByResult(@Param("result") int result);

    List<GkStationConfigurationValues> selectByValues(List<GkStationConfigurationValues> values);

    List<GkStationConfigurationValues> selectByValuesExcloudIds(@Param("values") List<GkStationConfigurationValues> values, @Param("valuesIds") List<Long> valuesIds);

    List<ConfigValueAndConfigConnectVo> selectAllInfoAndConfigInfo();

    int deleteByConfigIdsAndConnectId(@Param("configIds") List<Long> configIds, @Param("connectId") Long connectId);

    int editListConnectId(List<GkStationConfigurationValues> gkStationConfigurationValues);

    List<GkStationConfigurationValues> selectAll();

    List<Long> selectAllConnectIds(List<String> values);

    int deleteByIds(List<Long> deleteOldValueIds);

    int deleteByConnectId(@Param("connectId") Long connectId);

    List<GkStationConfigurationValues> selectByValueAndByTableName(@Param("surfaceName") String surfaceName, @Param("barCode") String barCode);

    List<GkStationConfigurationValues> selectByStationConfigurationConnectIdByTableName(@Param("surfaceName") String surfaceName, @Param("id") Long id);

    List<GkStationConfigurationValues> selectByStationConfigurationConnectIdsAndTableName(@Param("surfaceName") String surfaceName, @Param("connectIds") List<Long> connectIds);

    List<GkStationConfigurationValues> selectByStationConfigurationConnectIdAndTableName(@Param("surfaceName") String surfaceName, @Param("id") Long id);

    int editValueByIdAndTableName(@Param("surfaceName") String surfaceName, @Param("gkSparePartsVo") GkSparePartsVo gkSparePartsVo);

    void deleteByConnectIds(List<Long> collect);

    List<GkStationConfigurationValues> selectInfoByConfigIdsAndConnectId(@Param("saveConfigIds") List<Long> saveConfigIds, @Param("connectId") Long connectId);
}
